This invention is directed to how to select a set of variable values under conditions which satisfy one or more equalities or inequalities. This is a problem often experienced in the field of business such as budget planning, working of assets, and so forth, or in the field of the manufacturing industry. Although one solution is definitely determined by numerical optimization in usual operations research, infinite solutions generally exist for a problem dealt with by the invention. A planner is required to determine one of infinite solutions on the basis of his/her own experience, know-how, preference, and so on. Therefore, human-relied methods of solution have been employed heretofore.
Heretofore, a planner used a table calculating program (spreadsheet) to solve a numerical plan. In this case, because of an automatic calculating function, substitutional expressions are automatically calculated in response to modification of values. However, normal table calculating programs cannot handle bidirectional calculation (equality constraints) which is opposite calculations of a substitutional expression. In addition, normal table calculating programs cannot handle inequality constraints. Therefore, the planner himself is required to determine whether inequality constraints are satisfied or not, by calculating entire variable values while regarding equality constraints to be a substitutional expression and placing the substitutional expression on the work sheet of a table calculating program.
A simplified budget plan is taken as an example of numerical plan. Shown below is a statement on the work sheet of a table calculation program for the budget plan. Each cell is identified by a column number such as A, B, C, D, etc. and a row number such as 1, 2, 3, 4, etc. In each cell, sets of characters "item," "cash," etc. and numerical values "149659," "2.16," etc., and numerical expressions are input beforehand. Numerical expressions are input beforehand also in B2, C2, and D2 to D6. In the figure, however, definite numerical values are shown in corresponding cells because variables of the numerical expressions have been substituted by definite values.
______________________________________ A B C D ______________________________________ 1 item budget profit ratio profit 2 cash 149659 2.16 1616.3 3 securities 236008 7.48 8826.7 4 loaned money 1045046 5.81 30358.6 5 real estate 23404 0.00 0.0 6 total assets 1319177 2.49 32801.6 ______________________________________
This plan involves the following constraints: EQU B2+B3+B4+B5=B6 EQU B6=1319117 EQU 2.16 * B2/100=D2 EQU 7.48 * B4/100=D3 EQU 5.81 * B4/100=D4 EQU 0.00 * B5/100=D5 EQU D2+D3+D4+D5=D6 EQU B3&gt;=200000 EQU B4&lt;=1050000
However, the last two inequalities are not directly reflected to the table calculating program. It is required for the planner to determine variable values satisfy the inequalities.
In this example, the total assets are the sum of budgets for respective items. In addition, the budget for securities must be 200000 or more, and the budget for loaned money must be 1050000 or less. Appropriate combination of variable values must be obtained under these constraints.
There are four limits in a plan utilizing a table calculating program.
(1) Difficulty in confirming that the current solution satisfies the constraints:
A table calculation program cannot treat inequality constraints. The planner himself must examine whether the current solution satisfies all of the inequality constraints. This work increases in proportion to the amount of the inequality constraints.
(2) Impossibility of concealment of constraints from the planner:
Work is not completed only with determination of variable values satisfying equality constraints by using the table calculation program. If the current solution does not satisfy one or more of the inequality constraints, the solution must be modified to satisfy all of the constraints. Therefore, adjustment of unsatisfied inequality constraints is necessary. This is troublesome because the planner must know all of the constraints related to variables to be adjusted.
(3) Difficulty in generation of solution satisfying the constraints:
Adjustment of inequality constraints is normally performed as follows: One of unsatisfied inequality constraints is first selected in order to modify the solution to satisfy the constraints. Then variable values used in the inequality constraint is partly or entirely modified to satisfy the inequality constraint. Next, determined values are used to examine whether they satisfy the other constraints. This work is repetition of trial and error and requires a lot of labor. Nevertheless, this work does not guarantee that the planner does not fail to reach the solution satisfying the constraints.
(4) Difficulty in discovery of better solution:
The current procedure for obtaining satisfactory solution is progressed by the planner while looking into the solution, estimating a better solution, and trying a new candidate solution. Test of the new candidate is effected by the planner by modifying variable values. In this case, it is heavy work to confirm whether the new candidate is in a proper direction or not for the foregoing reasons. Further, even if it is confirmed to be in a proper direction, it is still difficult to know how far the procedure should be progressed. At present, it is necessary to try it while making new candidates at each step.
As explained above, there are many problems in solving numerical problems by means of a table calculating program, and an easier procedure for solution and a new procedure capable of obtaining a better solution more reflecting the planner's intention are desired.
Among prior art techniques related to the invention, JA PUPA 2-73458 performs bidirectional recalculation of a table calculation program; and JA PUPA 59-194258, JA PUPA 59-176821 and JA PUPA 61-229164 modify a business chart through manipulation to the screen and responsively modify corresponding numerical data. These prior art techniques, however, teach nothing to make it for a planner to instruct orientation to a better solution in an interactive manner through manipulation to graphics objects. Also on numerical planning problems on which a user had to determine a solution on the basis of vague criteria, they teach nothing how to obtain a more preferable solution in an automatic reliable manner by the operations research method using a predetermined objective function after orientation to a better solution by the planner.